package com.syni.mdd.sjb.common.component.utils.feign.service.synimerchants;

import com.syni.mdd.sjb.common.component.utils.feign.constants.Constants;
import com.syni.dto.synimerchants.ApiSyniMerchantsAccountRqDto;
import com.syni.mdd.sjb.common.component.utils.common.utils.RpcResponseVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;

@FeignClient(value = Constants.SYNI_MERCHANTS,path = Constants.SYNI_MERCHANTS_PATH)
@RequestMapping("/api/syniMerchantsAccount")
public interface SyniMerchantsAccountRestService{

    @PostMapping("/dataBankRegister")
    RpcResponseVo dataBankRegister(@RequestBody ApiSyniMerchantsAccountRqDto apiSyniMerchantsAccountRqDto);

    @PostMapping("/dataBankLogin")
    RpcResponseVo dataBankLogin(@RequestBody ApiSyniMerchantsAccountRqDto apiSyniMerchantsAccountRqDto);

    @GetMapping("/checkMerchantsAccountToken")
    RpcResponseVo checkMerchantsAccountToken(@RequestParam("token") String token);

    @GetMapping("/getMerchantsByPhone")
    RpcResponseVo getMerchantsByPhone(@RequestParam("phone") String phone);

    @GetMapping("/getMerchantsByAccountId")
    RpcResponseVo getMerchantsByAccountId(@RequestParam("accountId") String accountId);

    @PostMapping("/updateMerchantsAccountByAccountId")
    RpcResponseVo updateMerchantsAccountByAccountId(@RequestBody ApiSyniMerchantsAccountRqDto apiSyniMerchantsAccountRqDto);
}
